指针:SUPER
这 SUPER
指针是用于面向对象编程的特殊变量。
SUPER
是功能块的指针,指向生成功能块的基本功能块实例。这 SUPER
指针还允许访问基功能块(基类)的方法的实现。一个 SUPER
指针对每个功能块自动可用。您可以使用 SUPER
仅在方法和相关的功能块实现中。
指针的解引用: SUPER^
使用 SUPER
指针:随着 SUPER
关键字,您调用的方法在基本类或父类的实例中有效。
例 98. 例子
英石
SUPER^.METH_DoIt();
FBD/CFC/LD

例 99. 例子
用于 SUPER
和 THIS
指针
FUNCTION_BLOCK FB_Base VAR_OUTPUT iCnt : INT; END_VAR METHOD METH_DoIt : BOOL iCnt := -1; METHOD METH_DoAlso : BOOL METH_DoAlso := TRUE; FUNCTION_BLOCK FB_1 EXTENDS FB_Base VAR_OUTPUT iBase : INT; END_VAR THIS^.METH_DoIt(); //Call of the methods of FB_1 THIS^.METH_DoAlso(); SUPER^.METH_DoIt(); //Call of the methods of FB_Base SUPER^.METH_DoAlso(); iBase := SUPER^.iCnt; METHOD METH_DoIt : BOOL iCnt := 1111; METH_DoIt := TRUE; PROGRAM PLC_PRG VAR myBase : FB_Base; myFB_1 : FB_1; iTHIS : INT; iBase : INT; END_VAR myBase(); iBase := myBase.iCnt; myFB_1(); iTHIS := myFB_1.iCnt;
提示
THIS
尚未针对指令列表 (IL) 实现。